package com.youzan.open.sdk.gen.v3_0_0.model;

import com.google.common.collect.ArrayListMultimap;
import com.google.common.collect.Maps;
import com.google.common.collect.Multimap;
import com.youzan.open.sdk.model.APIParams;
import com.youzan.open.sdk.model.FileParams;
import com.youzan.open.sdk.model.APIResult;
import com.youzan.open.sdk.model.ByteWrapper;
import java.util.List;
import java.util.Map;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonProperty;

public class YouzanPayAccountingSummaryDetailGetResult implements APIResult {

    @JsonProperty(value = "acct_no")
    /**
     * 账户编号
     */
    private String acctNo;
    @JsonProperty(value = "currency")
    /**
     * 币种
     */
    private Long currency;
    @JsonProperty(value = "income_amount")
    /**
     * 收入金额（分）
     */
    private Long incomeAmount;
    @JsonProperty(value = "paid_amount")
    /**
     * 支出金额（分）
     */
    private Long paidAmount;
    @JsonProperty(value = "previous_balance")
    /**
     * 期初余额（分）
     */
    private Long previousBalance;
    @JsonProperty(value = "current_balance")
    /**
     * 期末余额（分）
     */
    private Long currentBalance;
    @JsonProperty(value = "summary_date")
    /**
     * 汇总日期
     */
    private Long summaryDate;
    @JsonProperty(value = "summary_type")
    /**
     * 汇总方式
     */
    private String summaryType;
    @JsonProperty(value = "income_detail_list")
    /**
     * 收入详情列表
     */
    private AccountingSummaryDetailDataDTO[] incomeDetailList;
    @JsonProperty(value = "paid_detail_list")
    /**
     * 支出详情列表
     */
    private AccountingSummaryDetailDataDTO[] paidDetailList;

    public void setAcctNo(String acctNo) {
        this.acctNo = acctNo;
    }

    public String getAcctNo() {
        return this.acctNo;
    }
    public void setCurrency(Long currency) {
        this.currency = currency;
    }

    public Long getCurrency() {
        return this.currency;
    }
    public void setIncomeAmount(Long incomeAmount) {
        this.incomeAmount = incomeAmount;
    }

    public Long getIncomeAmount() {
        return this.incomeAmount;
    }
    public void setPaidAmount(Long paidAmount) {
        this.paidAmount = paidAmount;
    }

    public Long getPaidAmount() {
        return this.paidAmount;
    }
    public void setPreviousBalance(Long previousBalance) {
        this.previousBalance = previousBalance;
    }

    public Long getPreviousBalance() {
        return this.previousBalance;
    }
    public void setCurrentBalance(Long currentBalance) {
        this.currentBalance = currentBalance;
    }

    public Long getCurrentBalance() {
        return this.currentBalance;
    }
    public void setSummaryDate(Long summaryDate) {
        this.summaryDate = summaryDate;
    }

    public Long getSummaryDate() {
        return this.summaryDate;
    }
    public void setSummaryType(String summaryType) {
        this.summaryType = summaryType;
    }

    public String getSummaryType() {
        return this.summaryType;
    }
    public void setIncomeDetailList(AccountingSummaryDetailDataDTO[] incomeDetailList) {
        this.incomeDetailList = incomeDetailList;
    }

    public AccountingSummaryDetailDataDTO[] getIncomeDetailList() {
        return this.incomeDetailList;
    }
    public void setPaidDetailList(AccountingSummaryDetailDataDTO[] paidDetailList) {
        this.paidDetailList = paidDetailList;
    }

    public AccountingSummaryDetailDataDTO[] getPaidDetailList() {
        return this.paidDetailList;
    }

    public static class AccountingSummaryDetailDataDTO {
            @JsonProperty(value = "biz_name")
        /**
        * 业务名称
        */
        private String bizName;
            @JsonProperty(value = "trade_count")
        /**
        * 交易笔数
        */
        private Long tradeCount;
            @JsonProperty(value = "amount")
        /**
        * 金额（分）
        */
        private Long amount;
    
            public void setBizName(String bizName) {
            this.bizName = bizName;
        }

        public String getBizName() {
            return this.bizName;
        }

            public void setTradeCount(Long tradeCount) {
            this.tradeCount = tradeCount;
        }

        public Long getTradeCount() {
            return this.tradeCount;
        }

            public void setAmount(Long amount) {
            this.amount = amount;
        }

        public Long getAmount() {
            return this.amount;
        }

        }


}